package com.powernode.service;

import com.powernode.domain.MemberAddr;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 * 用户配送地址 服务类
 * </p>
 *
 * @author 付作巍
 * @since 2024-08-19
 */
public interface MemberAddrService extends IService<MemberAddr> {
    /**
     * 查询会员所有收货地址
     * @param openId 会员openId
     * @return
     */
    List<MemberAddr> queryMemberAddrListByOpenId(String openId);

    /**
     * 新增会员收货地址
     * @param memberAddr 地址对象
     * @param openId 会员openId
     * @return
     */
    Boolean saveMemberAddr(MemberAddr memberAddr, String openId);

    /**
     * 修改会员收货地址信息
     * @param memberAddr 收货地址对象
     * @param openId 会员openid
     * @return
     */
    Boolean modifyMemberAddrInfo(MemberAddr memberAddr, String openId);

    /**
     * 删除会员收货地址
     * @param addrId 地址标识
     * @param openId 会员openId
     * @return
     */
    Boolean removeMemberAddrByAddrId(Long addrId, String openId);

    /**
     * 设置地址为默认收货地址
     * @param openId 会员openID
     * @param newAddrId 新的默认收货地址id
     * @return
     */
    Boolean modifyMemberDefaultAddr(String openId, Long newAddrId);
}
